package edu.ctbu.insurance.bean;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * <p>
 * 
 * </p>
 *
 * @author djl
 * @since 2024-06-28
 */
@TableName("t_policy")
public class Policy implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 保单ID，主键，自增
     */
    @TableId(value = "policy_id", type = IdType.AUTO)
    private Integer policyId;

    /**
     * 产品ID，外键，关联customers表
     */
    private Integer productId;

    /**
     * 产品名，不参与映射
     */
    @TableField(exist = false)
    private String productName;


    /**
     * 客户ID，关联用户表
     */
    private String customerId;



    /**
     * 客户名，不参与映射
     */
    @TableField(exist = false)
    private String customerName;

    /**
     * 保单类型
     */
    private String policyType;

    /**
     * 保单开始日期
     */
    private String startDate;

    /**
     * 保单结束日期
     */
    private String endDate;

    /**
     * 保费金额
     */
    private String premium;

    /**
     * 保单状态
     */
    private String status;

    /**
     * 删除标志位
     */
    private Integer deleteFlag;

    public Integer getPolicyId() {
        return policyId;
    }

    public void setPolicyId(Integer policyId) {
        this.policyId = policyId;
    }

    public String getCustomerId() {
        return customerId;
    }

    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    public String getPolicyType() {
        return policyType;
    }

    public void setPolicyType(String policyType) {
        this.policyType = policyType;
    }

    public String getStartDate() {
        return startDate;
    }

    public void setStartDate(String startDate) {
        this.startDate = startDate;
    }

    public String getEndDate() {
        return endDate;
    }

    public void setEndDate(String endDate) {
        this.endDate = endDate;
    }

    public String getPremium() {
        return premium;
    }

    public void setPremium(String premium) {
        this.premium = premium;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Integer getProductId() {
        return productId;
    }

    public void setProductId(Integer productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public Integer getDeleteFlag() {
        return deleteFlag;
    }



    public void setDeleteFlag(Integer deleteFlag) {
        this.deleteFlag = deleteFlag;
    }

    @Override
    public String toString() {
        return "Policy{" +
                "policyId=" + policyId +
                ", productId=" + productId +
                ", productName='" + productName + '\'' +
                ", customerId=" + customerId +
                ", customerName='" + customerName + '\'' +
                ", policyType='" + policyType + '\'' +
                ", startDate=" + startDate +
                ", endDate=" + endDate +
                ", premium='" + premium + '\'' +
                ", status='" + status + '\'' +
                '}';
    }
}
